home *** CD-ROM | disk | FTP | other *** search
/ The CICA Windows Explosion! / The CICA Windows Explosion! - Disc 1.iso / util / spoolf20.zip / READ.ME < prev    next >
Text File  |  1994-11-19  |  16KB  |  374 lines

  1.  
  2. SpoolFle copyright 1994 Paul F. Poellinger, Silent O Software
  3.  
  4. -------------------------------------------------------------------
  5. In Windows, a user can print to a file using the FILE: port, or by
  6. setting up a filename as a port, or by using my excellent WinPtr
  7. program, mentioned far below.  What gets created in that process is
  8. a DOS file containing everything the printer needs to recreate the
  9. printed output...including all control characters the printer driver
  10. meant to send to the printer for control and formatting.  THE FILE IS
  11. NOT A TEXT VERSION OF THE PRINTED OUTPUT.  Most of it is not humanly
  12. readable.
  13.  
  14. The main reason for doing this is to transport the file to another
  15. machine with that printer driver and cause the output the file contains
  16. to be printed.
  17.  
  18. Therein lies the rub.  DOS makes it possible to print such a file
  19. by providing a "binary" switch on the DOS Copy command, e.g.
  20.  
  21.       copy report.prn lpt1 /B   ... where the /B says binary
  22.                                     and 'lpt1' is the printer port
  23.  
  24. BUT...windows provides no such function.  It can be done by shelling
  25. to DOS, tho one takes a chance of confusing Print Manager, and it's
  26. a kludgy process.
  27.  
  28. Another common approach works better, but not as well as this program:
  29. The Windows Device Driver Development Kit, and thus the Windows API
  30. provides a SpoolFile() function.  But its use is problematic.  Print
  31. Manager must be activated.  Its use with non-local (read network)
  32. printers can result in "undefined behavior" (read GPFs).  Print Manager
  33. treats SpoolFile()-sent files as "temp" files and deletes them after
  34. printing them.  Finally, a bug in SpoolFile() causes Print Manager
  35. to GPF when the application that called SpoolFile() terminates before
  36. Print Manager is done spooling the file to the port.
  37.  
  38. This program uses a different, better approach:
  39. using the PASSTHROUGH printer escape functions of the Windows API.
  40. These allow this program to send the file contents to the printer
  41. through normal Windows channels without the driver supplying any
  42. additional control information. It has none of the above problems.
  43. PASSTHROUGH is special support provided by printer drivers for this
  44. exact purpose.  Alas, some printer drivers do not support passthrough.
  45. To avoid that possibility, this program uses its own printer driver,
  46. a special driver created for the single purpose of providing
  47. passthrough facilities.  This is done so you you can rest assured
  48. that your file will get printed no matter what printer you're using.
  49. It makes no changes to your Windows or printer configuration in
  50. accomplishing its mission.  AND, unlike some less reliable similar
  51. utilities, it does not require that you be using the Windows Print
  52. Manager...and it works with network printers.
  53.  
  54. Finally, you must understand that when the printer output file is
  55. created, it is created for the type of printer that is active at
  56. that time.  When the file is printed, the same type of printer must
  57. print the output...because the file contains codes specific to that
  58. type of printer, probably not understood by another type.  For example,
  59. files printed from the HP LaserJet III driver would not later print
  60. on the Epson LX-810 dot matrix printer.
  61. -------------------------------------------------------------------
  62.  
  63. UPDATE History:
  64.  
  65. 09-Nov-94 2.0 Added copies dialog,
  66.                     user-defined file filter,
  67.                     ability to restore copies dialog in ini file,
  68.                     ability to kill/restore completion dialog in ini.
  69. 18-Sep-94 1.0 Initial release
  70.  
  71. -------------------------------------------------------------------
  72.  
  73. Included:
  74.  
  75.    SpoolFle files
  76.    --------------
  77.  
  78.       SPOOLFLE.EXE                 The real deal
  79.       READ.ME                      self-reference (this)
  80.       PELIWARE.INI                 control file
  81.       PELI_RAW.DRV                 Alternate driver
  82.  
  83.    Install files
  84.    -------------
  85.  
  86.       INSTALL.EXE
  87.       INSTALL.BIN
  88.       INSTALL.INF
  89.       INSTALL.BMP
  90.  
  91.    Uninstall file
  92.    ---------------
  93.  
  94.       X_SPOOL.EXE
  95.  
  96. All SpoolFle files must be placed in the same directory, one of your
  97. choice, tho the install procedure will suggest c:\windows\spoolfle.
  98. I insist that the ini and drv files be kept with the exe for ecological
  99. purposes...it makes removal so much cleaner.
  100.  
  101. However, since the uninstall program cannot remove itself from the
  102. ..\spoolfle directory if it's started from there, don't put it there.
  103.  
  104. I suggest you put all files on a diskette, if you didn't get it that way,
  105. then install and uninstall from there.
  106.  
  107. INSTALLATION:
  108. ------------
  109.  * Crank up Windows.
  110.  * Select FILE/RUN from the Program Manager menus.
  111.  * Type a:install.
  112.  
  113.  - SpoolFle can initially be installed into its own Program Manager
  114.    group.   The install procedure will do this for you.  In the event
  115.    you want it in some other group, an override is provided. Note,
  116.    tho, that the x_spool, the uninstall, will only remove the default
  117.    group.
  118.  
  119. REMOVING SPOOLFLE FROM YOUR SYSTEM:
  120. --------------------------------
  121.  * Crank up Windows.
  122.  * Select FILE/RUN from the Program Manager menus.
  123.  * Type a:x_spool.
  124.  
  125.  OR
  126.  
  127.  * click on the "Remove SpoolFle" icon in the "SpoolFle" program
  128.    manager group, if you left it as installed.
  129.  
  130.  - All evidence of SpoolFle's existence will be removed.  Your loss.
  131.  - Everything in the "SpoolFle" group AND the group will be removed.
  132.  - The icon(s) I installed may remain if they're no longer in a
  133.    "SpoolFle" group.  You'll have to remove them yourself then...but
  134.    x_spool will have removed the programs they point to.
  135.  
  136. ------------------------------------------------------------------------
  137.  
  138. HOW TO USE SpoolFle:
  139.  
  140.     * you can launch SpoolFle, by double-clicking it's icon.  It'll
  141.       display a Windows file-selection dialog for you to select the
  142.       file to be printed.  Select one, and you'll be asked how many
  143.       copies, then it/they'll print...with a "completed" message when
  144.       spooled.
  145.  
  146.     * you can use Program Manager's FILE/RUN menu to launch SpoolFle,
  147.       with, or without a filename specified:
  148.  
  149.            SpoolFle
  150.               or
  151.            SpoolFle c:\report.prn
  152.  
  153.       If no file is specified, the file-selection dialog will popup.
  154.  
  155.     NOTE: OUTPUT IS AUTOMATICALLY SPOOLED TO THE CURRENT WINDOWS
  156.           DEFAULT PRINTER, so be sure your target is the default
  157.           prior to launching Spoolfle.
  158.  
  159.     * The copies dialog box has a check box which allows you to keep
  160.       from being asked how many.  If you check it, you'll only get
  161.       one copy from then on...until you comment the
  162.                      CopiesDialog=0
  163.       entry in the Peliware.ini file.  INI file entries are commented
  164.       by putting a semi-colon as the first character on the line:
  165.                     ;CopiesDialog=0
  166.  
  167.     * Similarly, you can keep SpoolFle from popping the "completed"
  168.       message by uncommenting the
  169.                     ;CompletionMessage=0
  170.       entry in the Peliware.ini file.  Uncomment it by removing the
  171.       semi-colon to restore the message.
  172.  
  173.    * The Peliware.ini file also contains an entry which allows you
  174.      to specify a filename template for the file selection, instead
  175.      of *.prn, the default.  The ini file entry is:
  176.                    ;DefaultFilter=*.xyz
  177.      Uncomment the entry (by removing the semi-colon), and change
  178.      the *.xyz part to whatever template you desire, e.g.
  179.                     DefaultFilter=*.txt
  180.                 or  DefaultFilter=PFP*.DRW
  181.                 or  DefaultFilter=abc*.*
  182.      Upper/lower caseness is unimportant.  Re-comment the entry to
  183.      restore *.prn as the default (that's what Microsoft recommends
  184.      for files created by printing to files.)
  185.  
  186.    NOTEPAD can be used to edit the Peliware.ini file.  INI files
  187.    as not sensitive to upper/lower caseness.
  188.  
  189. AN ALTERNATIVE launching mechanism:
  190.  
  191.    You can set up SpoolFle in Progam Manager with one or more filenames
  192.    already specified on the "command" line (separated by spaces).
  193.    SpoolFle won't ask for filenames or copies in that case.  You can
  194.    kill the completion message by putting a zero as a command line
  195.    parameter...it'll disable it for that run from the time it finds it.
  196.    For example:
  197.             SpoolFle 0 file1.prn file2.prn  ... prints two files with
  198.                                                 not completion msgs
  199.             SpoolFle file1.prn 0 file2.prn file3.prn ... prints 3 files
  200.                                                 with a completion msg
  201.                                                 only after the first.
  202.    You can also launch SpoolFle to print a file from within an
  203.    application program using the above syntax.
  204.  
  205. --------------------- Peliware.ini file contents ----------------------
  206.  
  207. [spoolfle]
  208.  
  209. ; I'll send you a text string to enter after the '=' below to kill the
  210. ; nag screen when you register.
  211.  
  212. SerialNumber=
  213.  
  214. ; To specify a default file template to be used when SpoolFle asks you
  215. ; for a file name, create a line like the one below (without the semi-colon
  216. ; which makes it a comment) in the form something.something, for example
  217. ; *.prn or *.txt or myout*.*
  218. ;
  219. ;DefaultFilter=*.xyz
  220.  
  221. ; The "Don't ask this anymore" check-box on the copies dialog creates
  222. ; an entry at the end of this file to kill the copies dialog.
  223. ; The entry looks like this: CopiesDialog=0
  224. ; Comment it (precede it with a semi-colon the restore the copies dialog.
  225.  
  226. ; Uncomment this (remove semi-colon) to kill message after successful
  227. ; spooling operation.
  228. ;
  229. ;CompletionMessage=0
  230.  
  231. ;LastInFileDirectory=<== used to keep track of last input path
  232. ;
  233.  
  234. ------------------------------------------------------------------------
  235.  
  236. This program has been extensively tested by me and friends, but YMMV,
  237. depending on printer driver.  It has also been checked for proper
  238. citizenship using Bounds Checker, the finest programming tools known
  239. to man and pelican.
  240.  
  241. ------------------------------------------------------------------------
  242.  
  243. You are free to try this program for 30 days.
  244.  
  245. If you decide to use it thereafter, you are obligated to send $10 to
  246.                      PAUL POELLINGER
  247.                      2019 Round Lake Drive
  248.                      Houston, TX  77077
  249. Texas Residents, include 8.25% sales tax (total = $10.83).
  250.  
  251.          -- OR --
  252.  
  253. register via Compuserve's shareware registration service by typing
  254. GO SWREG at the prompt. I charge $12.00 for registering this way
  255. cause Compuserve gets 15%...guess shareware means everyone who can
  256. gets a share :-( ... TX residents, I'll eat the tax.  The SWREG ID
  257. is 3636.
  258.  
  259. When you do, I'll send you what you need to kill the nag screen.
  260. This is a text string serial number that you will have to enter into
  261. the Peliware.ini file in the directory where SpoolFle is stored.
  262. Please include your e-mail address if you have one (automatic with SWREG)
  263. ...unless you say no, I'll send your serial number via e-mail.
  264. I can reach any internet email-enabled online service.  I'll use
  265. snail mail if you request or do not have an email address.
  266.  
  267. Please note that even if you paid for a diskette or CD containing
  268. this package, you must still pay my registration fee for use of
  269. SpoolFle past the 30 day free trial.  The fee you paid for the CD
  270. or diskette is someone else's "share" :-(
  271.  
  272. I and all those dependent on me thank you.
  273.  
  274. ------------------------------------------------------------------------
  275.  
  276. You are free to pass this TRIAL package on to others or upload it to
  277. bulletin boards provided that 1) you do not charge for it above
  278. the cost of distribution, and 2) all parts of the package are
  279. included (see "included" at the top).
  280.    Naturally, you're not allowed to pass on the peliware.ini file with
  281. your serial number in it (Having to say that always reminds me of the
  282. local commercial that finds it necessary to state that the
  283. all-you-can-eat-ribs offer is for dine-in-orders only :-)
  284.  
  285. -------------------------------------------------------------------
  286.  
  287. Thank you for supporting shareware.
  288.  
  289. -------------------------------------------------------------------
  290.  
  291. And thanks to Microsoft for leaving stuff like this out of Windows
  292. so we bottom-feeders can eat too.
  293.  
  294. -------------------------------------------------------------------
  295.  
  296. Multi-user licenses are available for:
  297.       up to 50 users................$250
  298.       Unlimited.....................$400
  299. Source code is available for $500.
  300.  
  301. -------------------------------------------------------------------
  302.  
  303. I used Borland C++ 3.x to develop this stuff.  I have not yet
  304. installed BC++ V4.0...so I can theoretically sell over 10,000
  305. copies.
  306. The next version will use 4.0, so you'll not be able to use this
  307. program as an operating system or in competition with any Borland
  308. product, and of course I'll have to limit you to less than 10,000
  309. copies.
  310.  
  311. ------------------- Peliware Commercial Break ---------------------
  312. **************** other offerings you might like ******************
  313. -------------------------------------------------------------------
  314.  
  315. WINPTR.ZIP/Bin  Bytes: 199472 on many compuserve forums and America
  316. On Line.  And on CICA, SimTel and Garbo Internet ftp sites and mirrors
  317. (as wprt10*.zip)...e.g: oak.oakland.edu in /pub/msdos/windows3
  318.  
  319.   Title   : Capture,print,control printer w/icon/hotkeys
  320.   Keywords: PRTSC PRINTER SCREEN WINDOW CLIENT CLIPBOARD CLIP FILE FAX
  321.             DEFAULT
  322.  
  323.   Send screen,window,client or rectangle to printer,clipboard,file or
  324.   fax. Send clipboard contents to printer,file or fax. Print files. Load
  325.   files to the clipboard. Text,bitmaps or metafiles. Assign a new default
  326.   printer. Change to portrait/landscape. Route all printer output to files.
  327.   View or clear the clipboard. See what printer is current and its
  328.   orientation on  icon.  ALL FROM A SINGLE ICON loaded with windows.  Most
  329.   via HOTKEYS. Shareware $20.
  330.  
  331.               ----------------------------
  332.  
  333. I've been selling a group of simple utilities for screen and
  334. clipboard printing and printer orientation control (PPrint/Prtsc,
  335. PClip/PrtClip, and Portland), collectively called WinPrt, for
  336. some time.  Look for them in the WINSHARE and MSBASIC fora of
  337. Compuserve (search for WINP*.ZIP for latest version).
  338.  
  339.               ----------------------------
  340.  
  341. Look for PPRTR*.ZIP in WINSHARE, MSBASIC or POWERSOFT on CIS,
  342. in the SOFTWARE section of AOL, or on fine FTP sites everywhere
  343. (e.g. oak.oakland.edu in /pub/msdos/windows3) on the Internet
  344. for a DLL providing advanced printer control to higher level
  345. languages (like Visual Basic or PowerBuilder). $10 a developer.
  346. Royalty-free distribution in any case.
  347.  
  348.               ----------------------------
  349.  
  350. Another dll provides font and font family enumeration as well
  351. as font textmetrics to the same crowd...same deal...same places.
  352. PPFONT.ZIP.
  353.  
  354.               ----------------------------
  355.  
  356. Finally, for now, look for PB3Ico.zip in the POWERSOFT forum or
  357. on PowerSoft's BBS for a hotkey icon that delivers any and all
  358. PowerBuilder function syntax into your editor using hotkey and
  359. menu navigation...making the manual grab obsolete.  Same deal
  360. as WinPtr (see above).
  361.  
  362. -------------------------------------------------------------------
  363.  
  364. Let me know if you have any trouble or suggestions.
  365.  
  366.       Paul Poellinger
  367.         Code Wallah
  368.         Silent O Software
  369.         Purveyors of Peliware
  370.         pelican@onramp.net   Compuserve: 70732,3576   AOL: PFPelican
  371.       9/18/94
  372.  
  373. ------------------------- EOJ -------------------------------------
  374.